#define _CRT_SECURE_NO_WARNINGS 1
#include "SeqList.h"

void ContactInit(contact* con)
{
	SLinit(con);
}

void Contactdelete(contact* con)
{
	SLdelete(con);
}

void ContactAdd(contact* con)
{
	PeoInfo Info;
	printf("请输入通讯录信息：\n");
	printf("请输入姓名：\n");
	scanf("%s", Info.name);
	printf("请输入性别：\n");
	scanf("%s", Info.gender);
	printf("请输入年龄：\n");
	scanf("%d", &Info.age);
	printf("请输入电话：\n");
	scanf("%s", Info.tel);
	printf("请输入地址：\n");
	scanf("%s", Info.address);
	SLPushBack(con, Info);
	printf("添加成功!\n");
}

void ContactShow(contact* con)
{
	printf("%s %s %s %s %s \n", "姓名", "性别", "年龄", "电话", "住址");
	for (int i = 0;i < con->size;i++)
	{
		printf("%s %s %d %s %s ", con->arr[i].name,
			con->arr[i].gender,
			con->arr[i].age,
			con->arr[i].tel,
			con->arr[i].address);
		printf("\n");
	}
}

static int ContactCheck(contact* con, char name[])
{
	for (int i = 0;i < con->size;i++)
	{
		if (0 == strcmp(name, con->arr[i].name))
		{
			return i;
		}
	}
	return -1;
}

//根据姓名删除
void ContactPop(contact* con)
{
	char name[100];
	printf("请输入要删除的姓名:\n");
	scanf("%s", name);
	int find = ContactCheck(con, name);
	if (find < 0)
	{
		printf("输入错误，没有此信息!\n");
	}
	else
	{
		SLPop(con, find);
		printf("删除成功!\n");
	}
}

void ContactMoidfy(contact* con)
{	
	char name[100];
	printf("请输入要修改的姓名:\n");
	scanf("%s", name);
	int find = ContactCheck(con, name);
	if (find < 0)
	{
		printf("输入错误，没有此信息!\n");
		return;
	}
	printf("请输入修改后的姓名：\n");
	scanf("%s", con->arr[find].name);
	printf("请输入修改后的性别：\n");
	scanf("%s", con->arr[find].gender);
	printf("请输入修改后的年龄：\n");
	scanf("%d", &con->arr[find].age);
	printf("请输入修改后的电话：\n");
	scanf("%s", con->arr[find].tel);
	printf("请输入修改后的住址：\n");
	scanf("%s", con->arr[find].address);
}

void ContactFind(contact* con)
{
	char name[100];
	printf("请输入要查找的姓名:\n");
	scanf("%s", name);
	int find = ContactCheck(con, name);
	if (find < 0)
	{
		printf("没有查到该信息!\n");
	}
	else
	{
		printf("%s %s %d %s %s \n", con->arr[find].name,
			con->arr[find].gender,
			con->arr[find].age,
			con->arr[find].tel, 
			con->arr[find].address);
		printf("\n");
	}
}